home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Interfaces & Libraries / Interfaces / PInterfaces / GXLayout.p < prev    next >
Encoding:
Text File  |  1995-07-06  |  8.7 KB  |  116 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        GXLayout.p
  3.  
  4.      Contains:    QuickDraw GX layout routine interfaces.
  5.  
  6.      Version:    Technology:    Quickdraw GX 1.1
  7.                  Package:    Universal Interfaces 2.1 in “MPW Latest” on ETO #18
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. }
  19.  
  20. {$IFC UNDEFINED UsingIncludes}
  21. {$SETC UsingIncludes := 0}
  22. {$ENDC}
  23.  
  24. {$IFC NOT UsingIncludes}
  25.  UNIT GXLayout;
  26.  INTERFACE
  27. {$ENDC}
  28.  
  29. {$IFC UNDEFINED __GXLAYOUT__}
  30. {$SETC __GXLAYOUT__ := 1}
  31.  
  32. {$I+}
  33. {$SETC GXLayoutIncludes := UsingIncludes}
  34. {$SETC UsingIncludes := 1}
  35.  
  36.  
  37. {$IFC UNDEFINED __CONDITIONALMACROS__}
  38. {$I ConditionalMacros.p}
  39. {$ENDC}
  40.  
  41. {$IFC UNDEFINED __GXTYPES__}
  42. {$I GXTypes.p}
  43. {$ENDC}
  44. {    Types.p                                                        }
  45. {    MixedMode.p                                                    }
  46. {    GXMath.p                                                    }
  47. {        FixMath.p                                                }
  48.  
  49. {$PUSH}
  50. {$ALIGN MAC68K}
  51. {$LibExport+}
  52. {$SETC layoutRoutinesIncludes := 1}
  53.  
  54. FUNCTION GXNewLayout(textRunCount: LONGINT; textRunLengths: INTEGER; text: UNIV Ptr; styleRunCount: LONGINT; styleRunLengths: INTEGER; styles: gxStyle; levelRunCount: LONGINT; levelRunLengths: INTEGER; levels: INTEGER; {CONST}VAR layoutOptions: gxLayoutOptions; {CONST}VAR position: gxPoint): gxShape; C;
  55. FUNCTION GXGetLayout(layout: gxShape; text: UNIV Ptr; VAR styleRunCount: LONGINT; styleRunLengths: INTEGER; styles: gxStyle; VAR levelRunCount: LONGINT; levelRunLengths: INTEGER; levels: INTEGER; VAR layoutOptions: gxLayoutOptions; VAR position: gxPoint): LONGINT; C;
  56. PROCEDURE GXSetLayout(layout: gxShape; textRunCount: LONGINT; textRunLengths: INTEGER; text: UNIV Ptr; styleRunCount: LONGINT; styleRunLengths: INTEGER; styles: gxStyle; levelRunCount: LONGINT; levelRunLengths: INTEGER; levels: INTEGER; {CONST}VAR layoutOptions: gxLayoutOptions; {CONST}VAR position: gxPoint); C;
  57. PROCEDURE GXDrawLayout(textRunCount: LONGINT; textRunLengths: INTEGER; text: UNIV Ptr; styleRunCount: LONGINT; styleRunLengths: INTEGER; styles: gxStyle; levelRunCount: LONGINT; levelRunLengths: INTEGER; levels: INTEGER; {CONST}VAR layoutOptions: gxLayoutOptions; {CONST}VAR position: gxPoint); C;
  58. PROCEDURE GXSetLayoutParts(layout: gxShape; oldStartOffset: gxByteOffset; oldEndOffset: gxByteOffset; newTextRunCount: LONGINT; newTextRunLengths: INTEGER; newText: UNIV Ptr; newStyleRunCount: LONGINT; newStyleRunLengths: INTEGER; newStyles: gxStyle; newLevelRunCount: LONGINT; newLevelRunLengths: INTEGER; newLevels: INTEGER); C;
  59. PROCEDURE GXSetLayoutShapeParts(layout: gxShape; startOffset: gxByteOffset; endOffset: gxByteOffset; insert: gxShape); C;
  60. FUNCTION GXGetLayoutParts(layout: gxShape; startOffset: gxByteOffset; endOffset: gxByteOffset; text: UNIV Ptr; VAR styleRunCount: LONGINT; styleRunLengths: INTEGER; styles: gxStyle; VAR levelRunCount: LONGINT; levelRunLengths: INTEGER; levels: INTEGER): LONGINT; C;
  61. FUNCTION GXGetLayoutShapeParts(layout: gxShape; startOffset: gxByteOffset; endOffset: gxByteOffset; dest: gxShape): gxShape; C;
  62. FUNCTION GXGetLayoutGlyphs(layout: gxShape; VAR glyphs: gxGlyphcode; positions: gxPoint; advance: LONGINT; tangents: gxPoint; VAR runCount: LONGINT; styleRuns: INTEGER; glyphStyles: gxStyle): LONGINT; C;
  63. FUNCTION GXHitTestLayout(layout: gxShape; {CONST}VAR hitDown: gxPoint; highlightType: gxHighlightType; VAR hitInfo: gxLayoutHitInfo; hitTrackingArea: gxShape): gxByteOffset; C;
  64. FUNCTION GXGetLayoutHighlight(layout: gxShape; startOffset: gxByteOffset; endOffset: gxByteOffset; highlightType: gxHighlightType; highlight: gxShape): gxShape; C;
  65. FUNCTION GXGetLayoutVisualHighlight(layout: gxShape; startOffset: gxByteOffset; startLeadingEdge: LONGINT; endOffset: gxByteOffset; endLeadingEdge: LONGINT; highlightType: gxHighlightType; highlight: gxShape): gxShape; C;
  66. FUNCTION GXGetLayoutCaret(layout: gxShape; offset: gxByteOffset; highlightType: gxHighlightType; caretType: gxCaretType; caret: gxShape): gxShape; C;
  67. FUNCTION GXGetLayoutBreakOffset(layout: gxShape; startOffset: gxByteOffset; lineWidth: Fixed; hyphenationCount: LONGINT; hyphenationPoints: gxByteOffset; VAR startIsStaked: BOOLEAN; VAR priorStake: gxByteOffset; VAR nextStake: gxByteOffset): gxByteOffset; C;
  68. FUNCTION GXGetLayoutRangeWidth(layout: gxShape; startOffset: gxByteOffset; endOffset: gxByteOffset; supplementaryText: gxShape): Fixed; C;
  69. FUNCTION GXNewLayoutFromRange(layout: gxShape; startOffset: gxByteOffset; endOffset: gxByteOffset; {CONST}VAR layoutOptions: gxLayoutOptions; supplementaryText: gxShape): gxShape; C;
  70. FUNCTION GXGetCaretAngleArea(layout: gxShape; {CONST}VAR hitPoint: gxPoint; highlightType: gxHighlightType; caretArea: gxShape; VAR returnedRise: INTEGER; VAR returnedRun: INTEGER): gxShape; C;
  71. PROCEDURE GXGetStyleBaselineDeltas(baseStyle: gxStyle; baseType: gxBaselineType; VAR returnedDeltas: gxBaselineDeltas); C;
  72. FUNCTION GXGetRightVisualOffset(layout: gxShape; currentOffset: gxByteOffset): gxByteOffset; C;
  73. FUNCTION GXGetLeftVisualOffset(layout: gxShape; currentOffset: gxByteOffset): gxByteOffset; C;
  74. PROCEDURE GXGetCompoundCharacterLimits(layout: gxShape; trial: gxByteOffset; VAR minOffset: gxByteOffset; VAR maxOffset: gxByteOffset; VAR onBoundary: BOOLEAN); C;
  75. PROCEDURE GXGetOffsetGlyphs(layout: gxShape; trial: gxByteOffset; leadingEdge: LONGINT; VAR offsetState: gxLayoutOffsetState; VAR firstGlyph: INTEGER; VAR secondGlyph: INTEGER); C;
  76. PROCEDURE GXGetGlyphOffset(layout: gxShape; trial: LONGINT; onLeftTop: LONGINT; VAR offset: gxByteOffset; VAR leadingEdge: BOOLEAN; VAR wasRealCharacter: BOOLEAN); C;
  77. PROCEDURE GXGetLayoutSpan(layout: gxShape; VAR lineAscent: Fixed; VAR lineDescent: Fixed); C;
  78. PROCEDURE GXSetLayoutSpan(layout: gxShape; lineAscent: Fixed; lineDescent: Fixed); C;
  79. FUNCTION GXGetLayoutJustificationGap(layout: gxShape): Fixed; C;
  80. PROCEDURE GXGetLayoutJustificationFactors(layout: gxShape; constrainedFactors: Fixed; unconstrainedFactors: Fixed); C;
  81. PROCEDURE GXSetStyleRunControls(target: gxStyle; {CONST}VAR runControls: gxRunControls); C;
  82. PROCEDURE GXSetStyleRunPriorityJustOverride(target: gxStyle; {CONST}VAR priorityJustificationOverride: gxPriorityJustificationOverride); C;
  83. PROCEDURE GXSetStyleRunGlyphJustOverrides(target: gxStyle; count: LONGINT; glyphJustificationOverrides: gxGlyphJustificationOverride); C;
  84. PROCEDURE GXSetStyleRunGlyphSubstitutions(target: gxStyle; count: LONGINT; glyphSubstitutions: gxGlyphSubstitution); C;
  85. PROCEDURE GXSetStyleRunFeatures(target: gxStyle; count: LONGINT; runFeatures: gxRunFeature); C;
  86. PROCEDURE GXSetStyleRunKerningAdjustments(target: gxStyle; count: LONGINT; kerningAdjustments: gxKerningAdjustment); C;
  87. PROCEDURE GXSetShapeRunControls(target: gxShape; {CONST}VAR runControls: gxRunControls); C;
  88. PROCEDURE GXSetShapeRunPriorityJustOverride(target: gxShape; {CONST}VAR priorityJustificationOverride: gxPriorityJustificationOverride); C;
  89. PROCEDURE GXSetShapeRunGlyphJustOverrides(target: gxShape; count: LONGINT; glyphJustificationOverrides: gxGlyphJustificationOverride); C;
  90. PROCEDURE GXSetShapeRunGlyphSubstitutions(target: gxShape; count: LONGINT; glyphSubstitutions: gxGlyphSubstitution); C;
  91. PROCEDURE GXSetShapeRunFeatures(target: gxShape; count: LONGINT; runFeatures: gxRunFeature); C;
  92. PROCEDURE GXSetShapeRunKerningAdjustments(target: gxShape; count: LONGINT; kerningAdjustments: gxKerningAdjustment); C;
  93. FUNCTION GXGetStyleRunControls(source: gxStyle; VAR runControls: gxRunControls): LONGINT; C;
  94. FUNCTION GXGetStyleRunPriorityJustOverride(source: gxStyle; VAR priorityJustificationOverride: gxPriorityJustificationOverride): LONGINT; C;
  95. FUNCTION GXGetStyleRunGlyphJustOverrides(source: gxStyle; glyphJustificationOverrides: gxGlyphJustificationOverride): LONGINT; C;
  96. FUNCTION GXGetStyleRunGlyphSubstitutions(source: gxStyle; glyphSubstitutions: gxGlyphSubstitution): LONGINT; C;
  97. FUNCTION GXGetStyleRunFeatures(source: gxStyle; runFeatures: gxRunFeature): LONGINT; C;
  98. FUNCTION GXGetStyleRunKerningAdjustments(source: gxStyle; kerningAdjustments: gxKerningAdjustment): LONGINT; C;
  99. FUNCTION GXGetShapeRunControls(source: gxShape; VAR runControls: gxRunControls): LONGINT; C;
  100. FUNCTION GXGetShapeRunPriorityJustOverride(source: gxShape; VAR priorityJustificationOverride: gxPriorityJustificationOverride): LONGINT; C;
  101. FUNCTION GXGetShapeRunGlyphJustOverrides(source: gxShape; glyphJustificationOverrides: gxGlyphJustificationOverride): LONGINT; C;
  102. FUNCTION GXGetShapeRunGlyphSubstitutions(source: gxShape; glyphSubstitutions: gxGlyphSubstitution): LONGINT; C;
  103. FUNCTION GXGetShapeRunFeatures(source: gxShape; runFeatures: gxRunFeature): LONGINT; C;
  104. FUNCTION GXGetShapeRunKerningAdjustments(source: gxShape; kerningAdjustments: gxKerningAdjustment): LONGINT; C;
  105.  
  106. {$ALIGN RESET}
  107. {$POP}
  108.  
  109. {$SETC UsingIncludes := GXLayoutIncludes}
  110.  
  111. {$ENDC} {__GXLAYOUT__}
  112.  
  113. {$IFC NOT UsingIncludes}
  114.  END.
  115. {$ENDC}
  116.